package com.candy.dao;

import java.sql.*;

public class DBHelper {
    public static void main(String[] args) {
        try {
//（0）下载jdbc驱动包；将驱动包导入项目。
// 注意：mysql8和mysql5的驱动包版本不通用。
//        本次项目使用maven进行构建，所有需要的jdbc依赖直接通过pom文件中指定依赖导入即可
// （1）注册或实例化jdbc的驱动类
//        使用反射的方式，指定驱动的全限定类的路径名字
            Class.forName("com.mysql.cj.jdbc.Driver");
// （2）获取数据库连接对象Connection
//            创建数据库连接对象需要准备三个参数
//            （a）数据库的连接串
//           jdbc:mysql使用jdbc链接mysql数据库
//            localhost表示要链接的数据库的ip
//            3306表示mysql的端口号
//            database_name要连接的数据库的名字
            String url="jdbc:mysql://localhost:3306/ld_mysql0317? characterEncoding=utf8 & useSSL=false & serverTimezone=UTC & rewriteBatchedStatements=true";
//          (b)数据库的用户名
            String username="root";
//            (c)数据库的密码
            String password="123456";
            Connection conn=DriverManager.getConnection(url,username,password);
// （3）获取数据库操作对象Statement（执行增删改查）
            Statement ment=conn.createStatement();
// （4）执行SQL语句，获取数据操作结果或者结果集对象ResultSet
            String sql="SELECT * FROM userinfo";
            ResultSet re=ment.executeQuery(sql);
// （5）解析结果集对象ResultSet，进行相关的业务处理；
//       next方法，读取resultSet的数据，若当前行有数据，则返回true，若当前行没有数据，则返回false
            while (re.next()){
                System.out.print(re.getObject(1)+"\t");
                System.out.print(re.getObject(2)+"\t");
                System.out.print(re.getObject(3)+"\t");
                System.out.print(re.getObject(4)+"\t");
                System.out.print(re.getObject(5)+"\t");
                System.out.print(re.getObject(6)+"\t");
                System.out.print(re.getObject(7)+"\t");
                System.out.println();
            }
//           关闭连接
            re.close();
            ment.close();
            conn.close();
//            当连接关闭后，不能够继续获取resultSet上面的数据
//            while (re.next()){
//                System.out.print(re.getObject(1)+"\t");
//                System.out.print(re.getObject(2)+"\t");
//                System.out.print(re.getObject(3)+"\t");
//                System.out.print(re.getObject(4)+"\t");
//                System.out.print(re.getObject(5)+"\t");
//                System.out.print(re.getObject(6)+"\t");
//                System.out.print(re.getObject(7)+"\t");
//                System.out.println();
//            }
        } catch (ClassNotFoundException e) {
            throw new RuntimeException(e);
        } catch (SQLException e) {
            throw new RuntimeException(e);
        }


    }
}
